home *** CD-ROM | disk | FTP | other *** search
- /*
- $AUTHOR: Fernando Nunes e Manuel Lemos (UpperDesign@zeus.ci.ua.pt)
- $VER: CloneObjects 1.01 (1.10.94)
- Description: ARexx macro for FinalWriter to clone the selected
- objects by an user defined number of times
- */
-
- options results
-
- GraphicTool
-
- /* obter a lista dos objectos seleccionados */
- selecionados = 0
- FirstObject SELECTED
- do until result = 0
- selecionados = selecionados + 1
- objectid.selecionados.0 = result
- NextObject objectid.selecionados.0 SELECTED
- end
-
- if selecionados >= 1 then
- do
- RequestText '"Clone objects" "Enter the number of copies"'
- vezes=result
-
- RequestText '"Clone objects" "Enter the horizontal offset between copies"'
- offset_horizontal=result
-
- RequestText '"Clone objects" "Enter the vertical offset between copies."'
- offset_vertical=result
-
- OBJECTO_LINHA = 2
-
- do objecto = 1 to selecionados
- GetObjectCoords objectid.objecto.0
- coords = RESULT
- PARSE VAR coords pagina esquerda cima direita baixo
-
- GetObjectType objectid.objecto.0
- tipo = result
- SelectObject objectid.objecto.0
- Copy
-
- do copia = 1 to vezes
- Paste
- FirstObject SELECTED
- objectid.objecto.copia = result
-
- cima = cima + offset_vertical
- esquerda = esquerda + offset_horizontal
-
- /* linhas */
- if tipo = OBJECTO_LINHA then
- do
- baixo = baixo + offset_vertical
- direita = direita + offset_horizontal
- end
-
- SetObjectCoords objectid.objecto.copia pagina esquerda cima direita baixo
- end
- end
-
- /* selecionar todos os objectos selecionados e respectivas cópias */
- do objecto = 1 to selecionados
- do copia = 0 to vezes
- SelectObject objectid.objecto.copia MULTIPLE
- end
- end
- Redraw
- end
-